//
// Created by 32827 on 2024/1/10.
//

#ifndef STM32OSCOVER_YZ_CONF_H
#define STM32OSCOVER_YZ_CONF_H
#include "yzdef.h"

#define YZ_CONF_CLOCK_FREQ (168*1000*1000)
#define YZ_USE_DEFAULT_CLOCK YZF_OFF    //是否已经通过Yzf配置系统时钟
#define YZ_USE_TICK_WITH_HAL YZF_OFF     //是否使用HAL库的Tick,进行延时

#define YZSCREEN ON
#define YZ_COLOR_MODE YZ_COLOR_MODE_BlackAndWhite
#define YZ_SCREEN_DRIVER YZ_SCREEN_DRIVER_I2C_1306
//屏幕接口
#define YZ_SCREEN_DRIVER_PORT I2C1
#define YZ_SCREEN_TOUCH_DRIVER YZ_SCREEN_TOUCH_DRIVER_NONE
#define YZ_SCREEN_MAX_TOUCH 5
#define YZ_SCREEN_HEIGHT 64
#define YZ_SCREEN_WIDTH 128
#define YZL_FONT_SRAM_SIZE 4   //Font SRAM

#define YZL_UI_WIDGET_DATA_SRAM_SIZE (8*4)     //void *的大小
#define YZL_UI_VIEW_DEEP_MAX 10

#define YZ_RECV_TRANSMIT_LEW_LIGHT yzf_gpio_set_1(GPIOA, YZF_PIN_8)
#define YZ_RECV_TRANSMIT_LEW_DARK yzf_gpio_set_0(GPIOA,YZF_PIN_8)

///YZ LIB MemManger
#define YZ_MEM_BLOCK_MAX_COUNT 512

//UI Running config
#define YZL_UI_VIEW_POSITION_DEBUG YZF_OFF
#define YZL_UI_VIEW_POSITION_DEBUG_COLOR WHITE
//Yzl_MEM Running Config
#define YZL_MEMORY_MANAGER_DEBUG YZF_OFF
//Yzl_FatFs Running Config
#define YZFATFS ON
#define YZFATFS_SD_DRIVER_PORT MicroSD_SPI
#define YZFATFS_MEMORY_MALLOC_DEBUG YZF_ON

///----------------- SDRAM ADDRESS LIST -------------------
///ALL SIZE:32MB
//#define YZ_SDRAM_BASE_ADDR 0xC0000000
//#define YZ_SDRAM_FreeRTOS_MANAGER_RAM_BASE YZ_SDRAM_BASE_ADDR
//#define YZ_SDRAM_FreeRTOS_MANAGER_RAM (20*1024*1024) ///20MB
//#define YZ_SDRAM_SCREEN_RAM_BASE  (YZ_SDRAM_FreeRTOS_MANAGER_RAM_BASE+YZ_SDRAM_FreeRTOS_MANAGER_RAM) ///0XC1400000
//#define YZ_SDRAM_SCREEN_RAM (800*480*2)           ///1.46484375MB
//#define YZ_SDRAM_USER_DATA_LOAD_BASE (YZ_SDRAM_SCREEN_RAM_BASE+YZ_SDRAM_SCREEN_RAM) ///0XC14BB800
//#define YZ_SDRAM_USER_DATA_LOAD (8*1024*1024)       ///8MB显存
//#define YZ_SDRAM_DYMIC_PROGRAM_BASE (YZ_SDRAM_USER_DATA_LOAD_BASE+YZ_SDRAM_USER_DATA_LOAD) ///0XC1CBB800
//#define YZ_SDRAM_DYMIC_PROGRAM (2*1024*1024)
#endif //STM32OSCOVER_YZ_CONF_H
